home *** CD-ROM | disk | FTP | other *** search
/ CD Actual 44 / PC Actual CD 44.iso / Linux / Cygwin / full.exe / Disk1 / data1.cab / Tools / H-i586-cygwin32 / i586-cygwin32 / include / asm / socket.h < prev    next >
Encoding:
C/C++ Source or Header  |  1998-12-04  |  2.9 KB  |  56 lines

  1. #ifndef _ASM_SOCKET_H
  2. #define _ASM_SOCKET_H
  3.  
  4. #include <cygwin/if.h>
  5.  
  6. #define IOCPARM_MASK    0x7f            /* parameters must be < 128 bytes */
  7. #define IOC_VOID        0x20000000      /* no parameters */
  8. #define IOC_OUT         0x40000000      /* copy out parameters */
  9. #define IOC_IN          0x80000000      /* copy in parameters */
  10.  
  11. #define _IO(x,y)        (IOC_VOID|(x<<8)|y)
  12. #define _IOR(x,y,t)     (IOC_OUT|(((long)sizeof(t)&IOCPARM_MASK)<<16)|(x<<8)|y)
  13. #define _IOW(x,y,t)     (IOC_IN|(((long)sizeof(t)&IOCPARM_MASK)<<16)|(x<<8)|y)
  14.  
  15. #define SIOCATMARK  _IOR('s',  7, u_long)  /* at oob mark? */
  16. #define FIONREAD    _IOR('f', 127, u_long) /* get # bytes to read */
  17. #define FIONBIO 0x8004667e /* To be compatible with termiost version */
  18. #define REAL_FIONBIO     _IOW('f', 126, u_long) /* set/clear non-blocking i/o */
  19. #define FIOASYNC    _IOW('f', 125, u_long) /* set/clear async i/o */
  20. #define SIOCSHIWAT  _IOW('s',  0, u_long)  /* set high watermark */
  21. #define SIOCGHIWAT  _IOR('s',  1, u_long)  /* get high watermark */
  22. #define SIOCSLOWAT  _IOW('s',  2, u_long)  /* set low watermark */
  23. #define SIOCGLOWAT  _IOR('s',  3, u_long)  /* get low watermark */
  24.  
  25. /* Needed for if queries */
  26. #define SIOCGIFCONF  _IOW('s', 100, struct ifconf) /* get if list */
  27. #define SIOCGIFFLAGS _IOW('s', 101, struct ifreq) /* Get if flags */
  28.  
  29. #define SOL_SOCKET      0xffff          /* options for socket level */
  30.  
  31. #define SO_DEBUG        0x0001          /* turn on debugging info recording */
  32. #define SO_ACCEPTCONN   0x0002          /* socket has had listen() */
  33. #define SO_REUSEADDR    0x0004          /* allow local address reuse */
  34. #define SO_KEEPALIVE    0x0008          /* keep connections alive */
  35. #define SO_DONTROUTE    0x0010          /* just use interface addresses */
  36. #define SO_BROADCAST    0x0020          /* permit sending of broadcast msgs */
  37. #define SO_USELOOPBACK  0x0040          /* bypass hardware when possible */
  38. #define SO_LINGER       0x0080          /* linger on close if data present */
  39. #define SO_OOBINLINE    0x0100          /* leave received OOB data in line */
  40. #define SO_DONTLINGER   (u_int)(~SO_LINGER)
  41.  
  42. /*                                                                        
  43.  * Additional options.                                                    
  44.  */                                                                       
  45. #define SO_SNDBUF       0x1001          /* send buffer size */            
  46. #define SO_RCVBUF       0x1002          /* receive buffer size */         
  47. #define SO_SNDLOWAT     0x1003          /* send low-water mark */         
  48. #define SO_RCVLOWAT     0x1004          /* receive low-water mark */      
  49. #define SO_SNDTIMEO     0x1005          /* send timeout */                
  50. #define SO_RCVTIMEO     0x1006          /* receive timeout */             
  51. #define SO_ERROR        0x1007          /* get error status and clear */  
  52. #define SO_TYPE         0x1008          /* get socket type */             
  53.  
  54. #endif /* _ASM_SOCKET_H */
  55.  
  56.